/**
 *====================================================
 * 文件名称: AbnormalExpenseEntity.java
 * 修订记录：
 * No    日期				作者(操作:具体内容)
 * 1.    2015年11月21日			chenxy(创建:创建文件)
 *====================================================
 * 类描述：(说明未实现或其它不应生成javadoc的内容)
 */
package com.yuexunit.finance.project.entity;

import java.math.BigDecimal;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import com.yuexunit.finance.project.AuthenticatEntity;
import com.yuexunit.finance.project.entity.lexicon.AbnormalSourceEnum;
import com.yuexunit.finance.project.entity.lexicon.ExpenditureEnum;
import com.yuexunit.finance.project.entity.lexicon.OperatorRoleEnum;

/**
 * @ClassName: AbnormalExpenseEntity
 * @Description: TODO(这里用一句话描述这个类的作用)
 * @author chenxy
 * @date 2015年11月21日 下午1:38:48
 */
@Entity
@Table(name = "FIN_ABNORMAL_EXPENSE")
public class AbnormalExpenseEntity extends AuthenticatEntity {

	/** 异常费用ID */
	@Id
	@GeneratedValue
	@Column(name = "ABNORMAL_EXPENSE_ID")
	private Long abnormalExpenseId;

	/** 异常ID */
	@Column(name = "ABNORMAL_ID")
	private Long abnormalId;

	/** 费用单据 */
	@Column(name = "VOUCHER")
	private String voucher;

	/** 收支类型 0:未知/1:付款单/2:收款单 */
	@Column(name = "EXPENDITURE")
	private ExpenditureEnum expenditure;

	/** 金额 */
	@Column(name = "ABNORMAL_AMOUNT")
	private BigDecimal abnormalAmount;

	/** 费用来源 0:未知(自定义)/1:责任人处置/2:伤亡情况/3:设备损坏/4:异常调查表/5:整改总结 */
	@Column(name = "ABNORMAL_SOURCE")
	private AbnormalSourceEnum abnormalSource;

	/** 费用来源ID */
	@Column(name = "ABNORMAL_SOURCE_ID")
	private Long abnormalSourceId;

	/** 费用类型 */
	@Column(name = "EXPENSE_TYPE")
	private String expenseType;

	/** 费用名称 系统参数ID-9 */
	@Column(name = "EXPENSE_NAME")
	private Integer expenseName;

	/** 收款方类型 0:未知/1:平台/2:客户方(企业信息)/3:供应商(物流方)/4;其他 */
	@Column(name = "RECEIPT_TYPE")
	private OperatorRoleEnum receiptType;

	/** 收款方ID */
	@Column(name = "RECEIPT_ID")
	private Long receiptId;

	/** 收款方租户ID */
	@Column(name = "RECEIPT_TENANT_ID")
	private Long receiptTenantId;

	/** 收款方名称 */
	@Column(name = "RECEIPT_NAME")
	private String receiptName;

	/** 付款方类型 0:未知/1:平台/2:客户方(企业信息)/3:供应商(物流方)/4;其他 */
	@Column(name = "DISBURSEMENT_TYPE")
	private OperatorRoleEnum disbursementType;

	/** 付款方ID */
	@Column(name = "DISBURSEMENT_ID")
	private Long disbursementId;

	/** 付款方租户ID */
	@Column(name = "DISBURSEMENT_TENANT_ID")
	private Long disbursementTenantId;

	/** 付款方名称 */
	@Column(name = "DISBURSEMENT_NAME")
	private String disbursementName;

	/** 付款时间 */
	@Column(name = "PAYMENT_DATE")
	private String paymentDate;

	/** 款项说明 */
	@Column(name = "REMARK")
	private String remark;

	public Long getAbnormalExpenseId() {
		return abnormalExpenseId;
	}

	public void setAbnormalExpenseId(Long abnormalExpenseId) {
		this.abnormalExpenseId = abnormalExpenseId;
	}

	public Long getAbnormalId() {
		return abnormalId;
	}

	public void setAbnormalId(Long abnormalId) {
		this.abnormalId = abnormalId;
	}

	public String getVoucher() {
		return voucher;
	}

	public void setVoucher(String voucher) {
		this.voucher = voucher;
	}

	public ExpenditureEnum getExpenditure() {
		return expenditure;
	}

	public void setExpenditure(ExpenditureEnum expenditure) {
		this.expenditure = expenditure;
	}

	public BigDecimal getAbnormalAmount() {
		return abnormalAmount;
	}

	public void setAbnormalAmount(BigDecimal abnormalAmount) {
		this.abnormalAmount = abnormalAmount;
	}

	public AbnormalSourceEnum getAbnormalSource() {
		return abnormalSource;
	}

	public void setAbnormalSource(AbnormalSourceEnum abnormalSource) {
		this.abnormalSource = abnormalSource;
	}

	public Long getAbnormalSourceId() {
		return abnormalSourceId;
	}

	public void setAbnormalSourceId(Long abnormalSourceId) {
		this.abnormalSourceId = abnormalSourceId;
	}

	public String getExpenseType() {
		return expenseType;
	}

	public void setExpenseType(String expenseType) {
		this.expenseType = expenseType;
	}

	public Integer getExpenseName() {
		return expenseName;
	}

	public void setExpenseName(Integer expenseName) {
		this.expenseName = expenseName;
	}

	public OperatorRoleEnum getReceiptType() {
		return receiptType;
	}

	public void setReceiptType(OperatorRoleEnum receiptType) {
		this.receiptType = receiptType;
	}

	public Long getReceiptId() {
		return receiptId;
	}

	public void setReceiptId(Long receiptId) {
		this.receiptId = receiptId;
	}

	public Long getReceiptTenantId() {
		return receiptTenantId;
	}

	public void setReceiptTenantId(Long receiptTenantId) {
		this.receiptTenantId = receiptTenantId;
	}

	public String getReceiptName() {
		return receiptName;
	}

	public void setReceiptName(String receiptName) {
		this.receiptName = receiptName;
	}

	public OperatorRoleEnum getDisbursementType() {
		return disbursementType;
	}

	public void setDisbursementType(OperatorRoleEnum disbursementType) {
		this.disbursementType = disbursementType;
	}

	public Long getDisbursementId() {
		return disbursementId;
	}

	public void setDisbursementId(Long disbursementId) {
		this.disbursementId = disbursementId;
	}

	public Long getDisbursementTenantId() {
		return disbursementTenantId;
	}

	public void setDisbursementTenantId(Long disbursementTenantId) {
		this.disbursementTenantId = disbursementTenantId;
	}

	public String getDisbursementName() {
		return disbursementName;
	}

	public void setDisbursementName(String disbursementName) {
		this.disbursementName = disbursementName;
	}

	public String getPaymentDate() {
		return paymentDate;
	}

	public void setPaymentDate(String paymentDate) {
		this.paymentDate = paymentDate;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

}
